LowFinder_PyraMider_V2This strategy is a result of an exploration to experiment with other ways to detect lows / dips in the price movement, to try out alternative ways to exit and stop positions and a dive into risk management. It uses a combination of different indicators to detect and filter the potential lows and opens multiple positions to spread the risk and opportunities for unrealized losses or profits. This script combines code developed by fellow Tradingview community_members.
LowFinder
The lows in the price movement are detected by the Low finder script by RafaelZioni . It finds the potential lows based on the difference between RSI and EMA RSI. The MTF RSI formula is part of the MTFindicators library developed by Peter_O and is integrated in the Low finder code to give the option to use the RSI of higher timeframes. The sensitivity of the LowFinder is controlled by the MA length. When potential lows are detected, a Moving Average, a MTF Stochastic (based the the MTFindiicators by Peter_O) and the average price level filter out the weak lows. In the settings the minimal percentage needed for a low to be detected below the average price can be specified.
Order Sizing and Pyramiding
Pyramiding, or spreading multiple positions, is at the heart of this strategy and what makes it so powerful. The order size is calculated based on the max number of orders and portfolio percentage specified in the input settings. There are two order size modes. The ‘base’ mode uses the same base quantity for each order it opens, the ‘multiply’ mode multiplies the quantity with each order number. For example, when Long 3 is opened, the quantity is multiplied by 3. So, the more orders the bigger the consecutive order sizes. When using ‘multiply’ mode the sizes of the first orders are considerably lower to make up for the later bigger order sizes. There is an option to manually set a fixed order size but use this with caution as it bypasses all the risk calculations.
Stop Level, Take Profit, Trailing Stop
The one indicator that controls the exits is the Stop Level. When close crosses over the Stop Level, the complete position is closed and all orders are exited. The Stop Level is calculated based on the highest high given a specified candle lookback (settings). There is an option to deviate above this level with a specified percentage to tweak for better results. You can activate a Take Profit / Trailing Stop. When activated and close crosses the specified percentage, the Stop Level logic changes to a trailing stop to gain more profits. Another option is to use the percentage as a take profit, either when the stop level crosses over the take profit or close. With this option active, you can make this strategy more conservative. It is active by default.
And finally there is an option to Take Profit per open order. If hit, the separate orders close. In the current settings this option is not used as the percentage is 10%.
Stop Loss
I published an earlier version of this script a couple of weeks ago, but it got hidden by the moderators. Looking back, it makes sense because I didn’t pay any attention to risk management and save order sizing. This resulted in unrealistic results. So, in this script update I added a Stop Loss option. There are two modes. The ‘average price’ mode calculates the stop loss level based on a given percentage below the average price of the total position. The ‘equity’ mode calculates the stop loss level based on a given percentage of your equity you want to lose. By default, the ‘equity’ mode is active. By tweaking the percentage of the portfolio size and the stop loss equity mode, you can achieve a quite low risk strategy set up.
Variables in comments
To sent alerts to my exchange I use a webhook server. This works with a sending the information in the form of a comment. To be able to send messages with different quantities, a variable is added to the comment. This makes it possible to open different positions on the exchange with increasing quantities. To test this the quantities are printed in the comment and the quantities are switched off in the style settings.
This code is a result of a study and not intended for use as a worked out and full functioning strategy. Use it at your own risk. To make the code understandable for users that are not so much introduced into pine script (like me), every step in the code is commented to explain what it does. Hopefully it helps.
Enjoy!
Buscar en scripts para "take profit"
*Backtesting System ⚉ OVERVIEW ⚉
One of the best Systems for Backtesting your Strategies.
Incredibly flexible, simple, fast and feature-rich system — will solve most of your queries without much effort.
Many systems for setting StopLoss, TakeProfit, Risk Management and advanced Filters.
All you need to do is plug in your indicator and start Backtesting .
I intentionally left the option to use my System on Full Power before you load your indicator into it.
The system uses the built-in simple and popular moving average crossover signal for this purpose. (EMA 50 & 200).
Also Highly Recommend that you Fully use ALL of the features of this system so that you understand how they work before you ask questions.
Also tried to leave TIPS for each feature everywhere, read Tips, activate them and see how they work.
But before you use this system, I Recommend you to read the following description in Full.
—————— How to connect your indicator in 2 steps:
Adapt your indicator by adding only 2 lines of code and then connect it to this Backtesting System.
Step 1 — Create your connector, For doing so:
• 1 — Find or create in your indicator where are the conditions printing the Long-Buy and Short-Sell signals.
• 2 — Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator wether it's a MACD, RSI , Pivots, or whatever indicator with Clear Buy and Sell conditions.
//@version=5
indicator('Moving Average Cross', overlay = true)
MA200 = ta.𝚎𝚖𝚊(close, 200)
MA50 = ta.𝚎𝚖𝚊(close, 50)
// Generate Buy and Sell conditions
buy = ta.crossover (MA200, MA50)
sell = ta.crossunder (MA200, MA50)
plot(MA200, color=color.green)
plot(MA50 , color=color.red )
bgcolor(color = buy ? color.green : sell ? color.red : na, title='SIGNALS')
// ———————————————— SIGNAL FOR SYSTEM ————————————————
Signal = buy ? +1 : sell ? -1 : 0
plot(Signal, title='🔌Connector🔌', display = display.none)
// —————— 🔥 The Backtesting System expects the value to be exactly +1 for the 𝚋𝚞𝚕𝚕𝚒𝚜𝚑 signal, and -1 for the 𝚋𝚎𝚊𝚛𝚒𝚜𝚑 signal
Basically, I identified my Buy & Sell conditions in the code and added this at the bottom of my indicator code
Now you can connect your indicator to the Backtesting System using the Step 2
Step 2 — Connect the connector
• 1 — Add your updated indicator to a TradingView chart and Add the Backtesting System as well to the SAME chart
• 2 — Open the Backtesting System settings and in the External Source field select your 🔌Connector🔌 (which comes from your indicator)
_______________________________
⚉ MAIN SETTINGS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
𝐄𝐱𝐭𝐞𝐫𝐧𝐚𝐥 𝐒𝐨𝐮𝐫𝐜𝐞 — Select your indicator. Add your indicator by following the 2 steps described above and select it in the menu. To familiarize yourself with the system until you select your indicator, you will have an in-built strategy of crossing the two moving EMA's of 50 and 200.
Long Deals — Enable/Disable Long Deals.
Short Deals — Enable/Disable Short Deals.
Wait End Deal — Enable/Disable waiting for a trade to close at Stop Loss/Take Profit. Until the trade closes on the Stop Loss or Take Profit, no new trade will open.
Reverse Deals — To force the opening of a trade in the opposite direction.
ReEntry Deal — Automatically open the same new deal after the deal is closed.
ReOpen Deal — Reopen the trade if the same signal is received. For example, if you are already in the long and a new signal is received in the long, the trade will reopen. * Does not work if Wait End Deal is enabled.
𝐓𝐚𝐤𝐞 𝐏𝐫𝐨𝐟𝐢𝐭:
None — Disables take profit. Useful if you only want to use dynamic stoplosses such as MA, Fast-Trailing, ATR Trail.
FIXED % — Fixed take profit in percent.
FIXED $ — Fixed Take in Money.
ATR — Fixed Take based on ATR.
R:R — Fixed Take based on the size of your stop loss. For example, if your stop is 10% and R:R=1, then the Take would be 10%. R:R=3 Take would be 30%, etc.
HH / LL — Fixed Take based on the previous maximum/minimum (extremum).
𝐒𝐭𝐨𝐩 𝐋𝐨𝐬𝐬:
None — Disables Stop Loss. Useful if you want to work without a stop loss. *Be careful if Wait End Deal is enabled, the trade may not close for a long time until it reaches the Take.
FIXED % — Fixed Stop in percent.
FIXED $ — Fixed Stop in Money.
TRAILING — Dynamic Trailing Stop like on the stock exchanges.
FAST TRAIL — Dynamic Fast Trailing Stop moves immediately in profit and stays in place if the price stands still or the price moves in loss.
ATR — Fixed Stop based on the ATR.
ATR TRAIL — Dynamic Trailing Stop based on the ATR.
LO / HI — A Fixed Stop based on the last Maximum/Minimum extemum. Allows you to place a stop just behind or above the low/high candle.
MA — Dynamic Stop based on selected Moving Average. * You will have 8 types of MA (EMA, SMA, HMA, etc.) to choose from, but you can easily add dozens of other MAs, which makes this type of stop incredibly flexible.
Add % — If true, then with the "𝗦𝘁𝗼𝗽 %" parameter you can add percentages to any of the current SL. Can be especially useful when using Stop - 𝗔𝗧𝗥 or 𝗠𝗔 or 𝗟𝗢/𝗛𝗜. For example with 𝗟𝗢/𝗛𝗜 to put a stop for the last High/Low and add 0.5% additional Stoploss.
Fixed R:R — If the stop loss is Dynamic (Trailing or MA) then if R:R true can also be made Dynamic * Use it carefully, the function is experimental.
_________________________________________
⚉ TAKE PROFIT LEVELS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
A unique method of constructing intermediate Take Profit Levels will allow you to select up to 5 intermediate Take Profit Levels and one intermediate Stop Loss.
Intermediate Take Profit Levels are perfectly calculated into 5 equal parts in the form of levels from the entry point to the final Take Profit target.
All you need to do is to choose the necessary levels for fixing and how much you want to fix at each level as a percentage. For example, TP 3 will always be exactly between the entry point and the Take Profit target. And the value of TP 3 = 50 will close 50% of the amount of the remaining size of the position.
Note: all intermediate SL/TP are closed from the remaining position amount and not from the initial position size, as TV does by default.
SL 0 Position — works in the same way as TP 1-5 but it's Stop. With this parameter you can set the position where the intermediate stop will be set.
Breakeven on TP — When activated, it allows you to put the stop loss at Breakeven after the selected TP is reached. For this function to work as it should - you need to activate an intermediate Take. For example, if TP 3 is activated and Breakeven on TP = 3, then after the price reaches this level, the Stop loss will go to Breakeven.
* This function will not work with Dynamic Stoplosses, because it simply does not make sense.
CoolDown # Bars — When activated, allows you to add a delay before a new trade is opened. A new trade after CoolDown will not be opened until # bars pass and a new signal appears.
_____________________________
⚉ TIME FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Powerful time filter code that allows you to filter data based on specific time zones, dates, and session days. This code is ideal for those who need to analyze data from different time zones and weed out irrelevant data.
With Time Filter, you can easily set the starting and ending time zones by which you want to filter the data.
You can also set a start and end date for your data and choose which days of the week to include in the analysis. In addition, you can specify start and end times for a specific session, allowing you to focus your analysis on specific time periods.
_________________________________
⚉ SIGNAL FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Signal Filters — allows you to easily customize and optimize your trading strategies based on 10 filters.
Each filter is designed to help you weed out inaccurate signals to minimize your risks.
Let's take a look at their features:
__________________________________
⚉ RISK MANAGEMENT ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Risk management tools that allow you to set the maximum number of losing trades in a row, a limit on the number of trades per day or week and other filters.
Loss Streak — Set Max number of consecutive loss trades.
Win Streak — Max Winning Streak Length.
Row Loss InDay — Max of consecutive days with a loss in a row.
DrawDown % — Max DrawDown (in % of strategy equity).
InDay Loss % — Set Max Intraday Loss.
Daily Trades — Limit the number of MAX trades per day.
Weekly Trades — Limit the number of MAX trades per week.
* 🡅 I would Not Recommend using these functions without understanding how they work.
Order Size — Position Size
• NONE — Use the default position size settings in Tab "Properties".
• EQUITY — The amount of the allowed position as a percentage of the initial capital.
• Use Net Profit — On/Off the use of profit in the following trades. *Only works if the type is EQUITY.
• SIZE — The size of the allowed position in monetary terms.
• Contracts — The size of the allowed position in the contracts. 1 Сontract = Сurrent price.
________________
⚉ NOTES ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
It is important to note that I have never worked with Backtesting and the functions associated with them before.
It took me about a month of slow work to build this system.
I want to say Big Thanks:
• The PineScripters🌲 group, the guys suggested how to implement some features. Especially @allanster
• Thanks to all those people who share their developments for free on TV and not only.
• I also thank myself for not giving up and finishing the project, and not trying to monetize the system by selling it. * Although I really want the money :)
I tried hard to make it as fast and convenient as possible for everyone who will use my code.
That's why I didn't use any libraries and dozens of heavy functions, and I managed to fit in 8+-functions for the whole code.
Absolutely every block of code I tried to make full-fledged modular, that it was easy to import/edit for myself (you).
I have abused the Ternary Pine operator a little (a lot) so that the code was as compact as possible.
Nevertheless, I tried very hard to keep my code very understandable even for beginners.
At last I managed to write 500 lines of code, making it one of the fastest and most feature-rich systems out there.
I hope everyone enjoys my work.
Put comments and write likes.
Strategy Template + Performance & Returns table + ExtrasA script I've been working on since summer 2022. A template for any strategy so you just have to write or paste the code and go straight into risk management settings
Features:
>Signal only Longs/only Shorts/Both
>Leverage system
>Proper fees calculation (even with leverage on)
>Different Stop Loss systems: Simple percentage, 4 different "move to Break Even" systems and Scaling SL after each TP order (read the disclaimer at the bottom regarding this and the TV % profitable metric)
>2 Take Profit systems: Simple percentages, or Risk/reward ratios based on SL level
>Additional option on TP so last one "rides free" until closure of position or Stoploss is hit (for more than 1 orders)
>Up to 5 TP orders
>Show or hide SL/TP levels on demand
>2 date filters. Manual filter is nothing new, enter two dates/hours and filter will turn on. BUT automatic filter is another thing (thanks to user @bfr_ for his help in codingthis feature)
>AUTOMATIC DATE FILTER. Allows you to split all historical data on the chart in X periods, then choose the range of periods used. Up to 10 but that can be changed, instructions included. Useful for WalkForward simulations, haven't seen a script in TradingView that allows you to do this and test your strategy on "unseen data" automatically
EXTRA SETTINGS
Besides, some additions I like to add to my codes:
>Returns table for monthly and weekly performance. Requires recalculation on every tick. This is a modified version of @QuantNomad's work. May add lower TF options later on
>Volume Based S/R system. Original work from @shtcoinr
>One feature that was made by me, the "portfolio table". Yields info and metrics of your strategy, current position and balance. You're able to turn it off and change its size
Should anyone find an error, or have any idea on how to improve this code, please contact me. Future updates could come, stay tuned
DISCLAIMER:
In order to have accurate StopLoss hit, I had to change the previous system, which was a "close position on candle close" instead at actual stoploss level. It was fixed, but resulted on inflation of the number of trading orders, thus reducing the percent profitable and making it strongly biased and unreal. Keep that in mind, that "real" profitability could be 2x or 3x the metric TradingView says. If your strategy has a really high trading frequency, resulting in 3000+ orders, might be a problem. Try to make use of the automatic/manual date filter as workaround, I have no means of changing this, seems it is not a bug but an intended design of the PineScript Code
Simple SuperTrend Strategy for BTCUSD 4HHello guys!, If you are a swing trader and you are looking for a simple trend strategy, you should check this one. Based in the supertrend indicator, this strategy will help you to catch big movements in BTCUSD 4H and avoid losses as much as possible in consolidated situations of the market
This strategy was designed for BTCUSD in 4H timeframe
Backtesting context: 2020-01-02 to 2023-01-05 (The strategy has also worked in previous years)
Trade conditions:
Rules are actually simple, the most important thing is the risk and position management of this strategy
For long:
Once Supertrend changes from a downtrend to a uptrend, you enter into a long position. The stop loss will be defined by the atr stop loss
The first profit will be of 0.75 risk/reward ratio where half position will be closed. When this happens, you move the stop loss to break even.
Now, just will be there two situations:
Once Supertrend changes from a uptrend to a downtrend, you close the other half of the initial long position.
If price goes againts the position, the position will be closed due to breakeven.
For short:
Once Supertrend changes from a uptrend to a downtrend, you enter into a short position. The stop loss will be defined by the atr stop loss
The first profit will be of 0.75 risk/reward ratio where half position will be closed. When this happens, you move the stop loss to break even.
Like in the long position, just will be there two situations:
Once Supertrend changes from a downtrend to a uptrend, you close the other half of the initial short position.
If price goes againts the position, the position will be closed due to breakeven.
Risk management
For calculate the amount of the position you will use just a small percent of your initial capital for the strategy and you will use the atr stop loss for this.
Example: You have 1000 usd and you just want to risk 2,5% of your account, there is a long signal at price of 20,000 usd. The stop loss price from atr stop loss is 19,000. You calculate the distance in percent between 20,000 and 19,000. In this case, that distance would be of 5,0%. Then, you calculate your position by this way: (initial or current capital * risk per trade of your account) / (stop loss distance).
Using these values on the formula: (1000*2,5%)/(5,0%) = 500usd. It means, you have to use 500 usd for risking 2.5% of your account.
We will use this risk management for apply compound interest.
Script functions
Inside of settings, you will find some utilities for display atr stop loss, supertrend or positions.
You will find the settings for risk management at the end of the script if you want to change something. But rebember, do not change values from indicators, the idea is to not over optimize the strategy.
If you want to change the initial capital for backtest the strategy, go to properties, and also enter the commisions of your exchange and slippage for more realistic results.
Signals meanings:
L for long position. CL for close long position.
S for short position. CS for close short position.
Tp for take profit (it also appears when the position is closed due to stop loss, this due to the script uses two kind of positions)
Exit due to break even or due to stop loss
Some things to consider
USE UNDER YOUR OWN RISK. PAST RESULTS DO NOT REPRESENT THE FUTURE.
DEPENDING OF % ACCOUNT RISK PER TRADE, YOU COULD REQUIRE LEVERAGE FOR OPEN SOME POSITIONS, SO PLEASE, BE CAREFULL AND USE CORRECTLY THE RISK MANAGEMENT
The amount of trades closed in the backtest are not exactly the real ones. If you want to know the real ones, go to settings and change % of trade for first take profit to 100 for getting the real ones. In the backtest, the real amount of opened trades was of 194.
Indicators used:
Supertrend
Atr stop loss by garethyeo
This is the fist strategy that I publish in tradingview, I will be glad with you for any suggestion, support or advice for future scripts. Do not doubt in make any question you have and if you liked this content, leave a boost. I plan to bring more strategies and useful content for you!
Strategy Myth-Busting #20 - HalfTrend+HullButterfly - [MYN]#20 on the Myth-Busting bench, we are automating the " I Found Super Easy 1 Minute Scalping System And Backtest It 100 Times " strategy from " Jessy Trading " who claims 30.58% net profit over 100 trades in a couple of weeks with a 51% win rate and profit factor of 1.56 on EURUSD .
This one surprised us quite a bit. Despite the title of this strategy indicating this is on the 1 min timeframe, the author demonstrates the backtesting manually on the 5 minute timeframe. Given the simplicity of this strategy only incorporating a couple of indicators, it's robustness being able to be profitable in both low and high timeframes and on multiple symbols was quite refreshing.
The 3 settings which we need to pay most attention to here is the Hull Butterfly length, HalfTrend amplitude and the Max Number Of Bars Between Hull and HalfTrend Trigger. Depending on the timeframe and symbol, these settings greatly impact the performance outcomes of the strategy. I've listed a couple of these below.
And as always, If you know of or have a strategy you want to see myth-busted or just have an idea for one, please feel free to message me.
This strategy uses a combination of 3 open-source public indicators:
Hull Butterfly Oscillator by LuxAlgo
HalfTrend by Everget
Trading Rules
5 min candles but higher / lower candles work too.
Stop loss at swing high/low
Take Profit 1.5x the risk
Long
Hull Butterfly gives us green column, Wait for HalfTrend to present an up arrow and enter trade.
Short
Hull Butterfly gives us a red column , Wait for HalfTrend to present a down arrow and enter trade.
Alternative Trading Settings for different time frames
1 Minute Timeframe
Move the Hull Butterfly length from the default 11 to 9
Move the HalfTrend Amplitude from the default 2 to 1
Enabling ADX Filter with a 25 threshold
2 Hour Timeframe
Move the HalfTrend Amplitude from the default 2 to 1
Laddered Take Profits from 14.5% to 19% with an 8% SL
Bitcoin Scalping Strategy (Sampled with: PMARP+MADRID MA RIBBON)
DISCLAIMER:
THE CONTENT WITHIN THIS STRATEGY IS CREATED FROM TWO INDICATORS CREATED BY TWO PINESCRIPTER'S. THE STRATEGY WAS EXECUTED BY MYSELF AND REVERSE-ENGINEERED TO MEET THE CONDITIONS OF THE INTENDED STRATEGY REQUESTOR. I DO NOT TAKE CREDIT FOR THE CONTENT WITHIN THE ESTABLISHED LINES MADE CLEAR BY MYSELF.
The Sampled Scripts and creators:
PMAR/PMARP by @The_Caretaker Link to original script:
Madrid MA RIBBON BAR by @Madrid Link to original script:
Cheat Code's strategy notes:
This sampled strategy (Requested by @elemy_eth) is one combining previously created studies. I reverse-engineered the local scope for the Madrid moving average color plots and set entry and exit conditions for certain criteria met. This strategy is meant to deliver an extremely high hit rate on a daily time frame. This is made possible because of the very low take profit percentage, during the context of a macro downtrend it is made easier to hit 1-3% scalps which is made visible with the strategy using sampled scripts I created here.
How it works:
Entry Conditions:
-Enter Long's if the lime color conditions are met true using the script detailed by Marid's MA
- No re-entry into positions needs to be met true (this prevents pyramiding of orders due to conditions being met true) applicable to both long and short side entries.
- To increase hit rate and prevent traps both the parameters of rsi being sub 80 and no previously engulfing candles need to be met true to enter a long position.
- Enter Short's if the red color conditions of Madrid's moving average are met true.
- Closing Long positions are typically not met within this indicator, however, it still sometimes triggers if necessary. This consists of a pmarp sub 99 and a position size greater than 0.0
- Closing Short positions are typically not met within this indicator, however, it still sometimes triggers if necessary. This consists of a pmarp over 01 and a position size less than 0.0
- Stop Loss: 27.75% Take Profit: 1% (Which does not trigger on ticks over 1% so you will see average trade profits greater than 1%)
BYBIT:BTCUSDT BINANCE:BTCUSDT COINBASE:BTCUSD
Best Of Luck :)
-CheatCode1
Squeeze Momentum Strategy [LazyBear] Buy Sell TP SL Alerts-Modified version of Squeeze Momentum Indicator by @LazyBear.
-Converted to version 5,
-Taken inspiration from @KivancOzbilgic for its buy sell calculations,
-Used @Bunghole strategy template with Take Profit, Stop Loss and Enable/Disable Toggles
-Added Custom Date Backtesting Module
------------------------------------------------------------------------------------------------------------------------
All credit goes to above
Problem with original version:
The original Squeeze Momentum Strategy did not have buy sell signals and there was alot of confusion as to when to enter and exit.
There was no proper strategy that would allow backtesting on which further analysis could be carried out.
There are 3 aspects this strategy:
1 ) Strategy Logic (easily toggleable from the dropdown menu from strategy settings)
- LazyBear (I have made this simple by using Kivanc technique of Momentums Moving Average Crossover, BUY when MA cross above signal line, SELL when crossdown signal line)
- Zero Crossover Line (BUY signal when crossover zero line, and SELL crossdown zero line)
2) Long Short TP and SL
- In strategies there is usually only 1 SL and 1 TP, and it is assumed that if a 2% SL giving a good profit %, then it would be best for both long and short. However this is not the case for many. Many markets/pairs, go down with much more speed then they go up with. Hence once we have a profitable backtesting setting, then we should start optimizing Long and Short SL's seperately. Once that is done, we should start optimizing for Long and Short TP's separately, starting with Longs first in both cases.
3) Enable and Disable Toggles of Long and Short Trades
- Many markets dont allow short trades, or are not suitable for short trades. In this case it would be much more feasible to disable "Short" Trading and see results of Long Only as a built in graphic view of backtestor provides a more easy to understand data feed as compared to the performance summary in which you have to review long and short profitability separately.
4) Custom Data Backtesting
- One of most crucial aspects while optimizing for backtesting is to check a strategies performance on uptrends, downtrend and sideways markets seperately as to understand the weak points of strategy.
- Once you enable custom date backtesting, you will see lines on the chart which can be dragged left right based on where you want to start and end the backtesting from and to.
Note:
- Not a financial advise
- Open to feedback, questions, improvements, errors etc.
- More info on how the squeeze momentum works visit LazyBear indicator link:
Happy Trading!
Cheers
M Tahreem Alam @mtahreemalam
RSI+PA+PrTPHi everybody,
This strategy is a RSI, Price Averaging, Pyramiding Strategy based on the earlier RSI+PA+DCA strategy. See below.
For this slightly different strategy I left the DCA option out and instead focused on the Take Profit calculation. In the previous strategy the Take Profit was directly connected to the Average Price level with a specified take profit %. When the price reached the Take Profit all positions where exited. The strategy opened multiple position based on the PA price levels. The separate positions can close when they reach separately specified Take Profit Limit. Each time the prices crosses the PA layer again the position can be re-opened. This causes the average price to drop each time a separate position is opened and closed.
I thought it was an interesting way to minimize losses and in general it works fine. Only when the market goes bearish it can cause significant losses
For the lack of a better word, I dubbed it Progressive Take Profit. The PrTP works different and is less risky. It doesn't directly follow the average price development and is calculated for a part based on the estimated profits of the separate closed positions. Every time a separate position is closed, the profit of that position is deducted of the Take Profit Limit. This causes the Take Profit Limit to drop les drastically then the average price and the whole position will only be closed when the separately opened and closed positions made up for the biggest losses.
There are still some aspects in the puzzle that are not fully worked out yet and I am still working on it, but I wanted to share this idea already and maybe you have some thoughts about it.
The next step is to re-implement a better worked out DCA function.
To be continued.
Up/Down Strategy - ContrarianThis is a consecutive bar up/down strategy for going long when the short condition is met or going short when the long condition is met. This is known in trading as taking contrarian signals and is helpful when an asset can provide only losses with a given strategy. In theory taking the opposing trade should produce a profit. With this strategy you can specify how many bars down to enter long and how many bars up to enter short. It also has code to check and make sure the condition is still true when launching the official alert, which helps back testing and live results line up, however be sure to enter commission and slippage into the properties to accurately reflect profits. I added back testing date ranges to this so you can easily pull up and see back tested results for a certain date range. I also added a buy and sell messages, close messages and take profit/stop loss message fields in the properties so you can launch alerts that will work with automated trading services. Simply enter your messages into those fields in the properties and then when you create an alert enter {{strategy.order.alert_message}} into the alert body and it will dynamically pull in your buy and sell messages when it fires alerts. I also added time restriction so you can enter trades only during the time frame specified. You can change it to any time frame, such at 0930-1600. Set the time restriction field to empty by default since otherwise the strategy won't take all trades like normal. So to enable time restriction enter a time frame in the format 0000-0000. I also added the ability to check off a box that will close the open trade at the end of the time restriction. So if you set the time frame to 0930-1600 and check off to enable close trade at end of time frame then it will look to exit the trade at the close of the next bar.
MacD Short and/or Long with Bi-Directional TP and SL This tool allows you to test any variable value for MacD and Signal for going Long or Short with each market direction having customizable values for stop loss and take profit.
For example, sometimes the MacD and Signal values are better with different lengths between Short and Long. You can use this tool to see them overlaid and determine the best settings for going one direction or the other.
This script was preset for use with XBTUSD on the 4 hour time frame. Another example with this in mind, is take profits and stop losses might not work in the Long market direction but going Short does! Without this tool that would be hard to see since typically stop loss and take profit is applied to both directions. I found with this tool that a 20% take profit seems to be a good sweet spot for going short with this strategy.
You can customize which MacD histogram you see by going to the style section and turning off the Short or Long parameters so you can see only 1 histogram at a time if you wish.
If you have any questions, please PM me.
Risk Management Tool [LuxAlgo]Good money management is one of the fundamental pillars of successful trading. With this indicator, we propose a simple way to manage trading positions. This tool shows Profit & Loss (P&L), suggests position size given a certain risk, sets stop losses and take profit levels using fixed price value/percentage/ATR/Range, and can also determine entries from crosses with technical indicators which is particularly handy if you don't want to set an entry manually.
1. Settings
Position Type: Determines if the position should be a "Long" or "Short".
Account Size: Determines the total capital of the trading account.
Risk: The maximum risk amount for a trade. Can be set as a percentage of the account size or as a fixed amount.
Entry Price: Determines the entry price of the position.
Entry From Cross: When enabled, allows to set the entry price where a cross with an external source was produced.
1.1 Stop Loss/Take Profit
Take Profit: Determines the take profit level, which can be determined by a value or percentage.
Stop Loss: Determines the stop loss level, which can be determined by a value or percentage.
2. Usage
One of the main usages of position management tools is to determine the position size to allocate given a specific risk amount and stop-loss. 2% of your capital is often recommended as a risk amount.
Our tool allows setting stop losses and take profits with different methods.
The ATR method sets the stop loss/take profit one ATR away from the entry price, with the ATR period being determined in the drop-down menu next to the selected methods. The range method works similarly but instead of using the ATR, we use a rolling range with a period determined in the drop-down menu next to the selected methods as well.
Unlike the available position management tool on TradingView, the entry can be determined from a cross between the price an an external source. The image above shows entries from the Volatility Stop indicator. This is particularly useful if you set positions based on trailing stops.
Optimized Keltner Channels SL/TP Strategy for BTCThis strategy is optimized for Bitcoin with the Keltner Channel Strategy, which is TradingView's built-in strategy. In the original Keltner Channel Strategy, it was difficult to predict the timing of entry because the Buy and Sell signals floated in the middle of the candle in real time. This strategy is convenient because if the bitcoin price hits the top or bottom of the Keltner Channel and closes the closing price, you can enter Buy or Sell at the next candle start price. In addition, this strategy provides Stop Loss and Take Profit functions to maximize profit.
_________________________________
Recommended settings are below.
- length: 9
- multiplier: 1
- source: close
- (v) Use EMA
- Bands Style: Average True Range
- ATR Length: 19
- Stop Loss (%): 20
- Take Profit (%) : 20
_________________________________
- length: 9
- multiplier: 1
- source: close
- (v) Use EMA
- Bands Style: Average True Range
- ATR Length: 18
- Stop Loss (%): 20
- Take Profit (%) : 5
_________________________________
▶ Usefulness and Originality
- Stop Loss and Take Profit functions are available
- Convenient Buy and Sell entry compared to the original Keltner Channel Strategy
- Optimized for BTCUSD market (maximizing profits)
___________________________________________
이 전략은 TradingView의 Built-in 전략인 Keltner Channel Strategy를 비트코인에 맞게 최적화되었습니다. 기존의 Keltner Channel Strategy는 Buy, Sell 신호가 캔들 중간에 실시간으로 떠서 진입 시점을 예측하기 어려운 불편함이 있었지만 이 전략은 비트코인 가격이 Keltner Channel 상단 혹은 하단을 찍고 종가를 마감하면 그 다음 캔들 시작가에서 Buy 혹은 Sell 진입이 가능하여 편리합니다. 또한, 이 전략은 Keltner Channel을 만나서 캔들을 마감한 가격 (bprice, sprice)을 시각적으로 plot을 제공하여 타점 및 차트를 보기에 편리하며 손절가 및 목표가를 지정한 백테스팅이 가능합니다.
Chaikin Money Flow + MACD + ATRHere I present you on of Trade Pro's Trading Idea: Chaikin Money Flow + MACD + ATR.
This strategy is not as profitable as it can be seen in one of his videos. In the forex market, the strategy could reach a maximum of 35% profitability.
I have, as some of my followers have requested, created an overview of the current position, risk and leverage settings in the form of a table.
Furthermore, one can again swap between short and long positions.
It is now possible to select or deselect individual indicators.
I have chosen the ATR alone as a take profit stop loss, as in his strategy.
A position is only triggered as soon as all prerequisites have been fulfilled and a command is executed. This prevents false triggering by bots and repainting.
-----------------------------------------------------------------------------------
How does the strategy work?
ENTRY
Long
The MACD indicator must be above the zero line.
Then the K line must cross the D line.
Finally, when this happens, the Money Flow Index must be above the zero line.
Short
Contrary to the premise of long positions.
EXIT
ATR Exit
The value of ATR at the time of buying is multiplied by the value entered in "Profit factor ATR" and "Stop factor ATR". As soon as the price reaches this value, it is closed.
Important
The script must be optimized for each coin or currency pair.
I will publish a guide to the strategy shortly. There I will explain how the table works and how to set the strategy correctly.
The results of the strategy are without commissions and leverage.
If you have any questions or feedback, please let me know in the comments.
TradePro's Trading Idea Cipher Divergence EMA Pb StrategyHere I present you on of Trade Pro's Trading Idea: Cipher B+ Divergence EMA Pullback Strategy.
Optimized the crypto pairBTC/USDT in the 30 minute chart.
There is the possibility to switch between short and long positions.
You can choose between 2 different take profit/stop loss types: The Lowest Low/ Highest High Stop Loss/ Take Profit and the ATR Take Profit/ Stop Loss.
-----------------------------------------------------------------------------------
How does the strategy work?
ENTRY
Long
The price must be above the 200 EMA .
The price needs to make a pullback into the 50 EMA .
Right after that, the Cipher B indicator must give a buy signal, it must be below the zero line and the Money Flow cloud must be green.
Short
Contrary to the premise of long positions.
EXIT
Lowest Low/ Highest High Exit
The Lowest Low (long) / highest high (short) serves as the stop loss. The TP is formed on the basis of a factor.
(Long for example: *Lowest Low* multiplied by *Profitfactor* = TP).
ATR Exit
The value of ATR at the time of buying is multiplied by the value entered in "Profit factor ATR" and "Stop factor ATR". As soon as the price reaches this value, it is closed.
Important
The script must be optimized for each coin or currency pair. However, only the values for the profit factor, the stop loss and Lowest Low / Highest High are relevant.
Also, by changing the Chanel Length and the Chanel Average, you can create strong profit changes.
The results of the strategy are without commissions and leverage.
If you have any questions or feedback, please let me know in the comments.
If you need more information about the strategy and want to know exactly how to apply it, check out my profile. There I have created a tutorial for the function of the script.
RSI+PA+DCA StrategyDear Tradingview community,
This RSI based trading strategy is created as a training exercise. I am not a professional trader, but a committed hobbyist. This not a finished trading strategy meant for trading, but more a combination of different trading ideas I liked to explore deeper. The aim with this exercise was to gain more knowledge and understanding about price averaging and dollar cost averaging strategies. Aside that I wanted to learn how to program a pyramiding strategy, how to plot different order entry layers and how to open positions on a specific time interval.
In this script I adapted code from a couple of strategy examples by Coinrule . Who wrote simple and powerful examples of RSI based strategies and pyramiding strategies.
Also the HOWTO scripts shared by vitvlkv were very helpful for this exercise. In the script description you can find all the sources to the code.
A PA strategy could be a helpful addition to ease the 'stress-management to buy when price drops and resolution in selling when the price is rising' (Coinrule).
The idea behind the strategy is fairly simple and is based on an RSI strategy of buying low. A position is entered when the RSI and moving average conditions are met. The position is closed when it reaches a specified take profit percentage. As soon as the first the position is openend multiple PA (price average) layers are setup based on a specified percentage of price drop. When the price crosses the layer another position with somewhat the same amount of assets is entered. This causes the average cost price (the red plot line) to decrease. If the price drops more, another similar amount of assets is bought with another price average decrease as result. When the price starts rising again the different positions are separately closed when each reaches its specified take profit. The positions can be re-openend when the price drops again. And so on. When the price rises more and crosses over the average price and reached the specified take profit on top of it, it closes all the positions at once and cancels all orders. From that moment on it waits for another price dip before it opens a new position.
Another option is to activate a DCA function that opens a position based on a fixed specified amount. It enters a position at the start of every week and only when there are already other positions openend and if the current price is below the average price of the position. Like this buying on a time interval can help lowering the average price in case the market is down.
I read in some articles that price averaging is also called dollar cost averaging as the result is somewhat the same. Although DCA is really based on buying on fixed time intervals. These strategies are both considered long term investment strategies that can be profitable in the long run and are not suitable for short term investment schemes. The downturn is that the postion size increases when the general market trend is going down and that you have to patiently wait until the market start rising again.
Another notable aspect is that the logic in this strategy works the way it does because the entries are exited based on the FIFO (first in first out) close entry rule. This means that the first exit is applied to the first entry position that is openend. In other words that when the third entry reaches its take profit level and exits, it actually exits the first entry. If you take a close look in the 'List of Trades' of your Strategy Tester panel, you can see that some 'Long1' entries are closed by an 'Exit 3' and not by an 'Exit 1'. This means that your trade partly loses, but causes a decrease in average price that is later balanced out by lower or repeated entering and closing other positions. You can change this logic to a real sequential way of closing your entries, but this changes the averaging logic considerably. In case you want to test this you need to change, in this line in the strategy call 'close_entries_rule = "FIFO"', the word FIFO to ANY.
In the settings you can specify the percentage of portfolio to use for each trade to spread the risk and for each order a trading fee of 0.075% is calculated.
Zignaly TutorialThis strategy serves as a beginner's guide to connect TradingView signals to Zignaly Crypto Trading Platform.
It was originally tested at BTCUSDT pair and 1D timeframe.
Before using this documentation it's recommended that you:
Use default TradingView strategy script or another script and setup its associated alert manually. Just make the alert pop-up in the screen.
Create a 'Copy-Trader provider' (or Signal Provider) in Zignaly and send signals to it either thanks to your browser or with some basic programming.
SETTINGS
__ SETTINGS - Capital
(CAPITAL) Capital quote invested per order in USDT units {100.0}. This setting is only used when '(ZIG) Provider type' is set to 'Signal Provider'.
(CAPITAL) Capital percentage invested per order (%) {25.0}. This setting is only used when '(ZIG) Provider type' is set to 'Copy Trader Provider'.
__ SETTINGS - Misc
(ZIG) Enable Alert message {True}: Whether to enable alert message or not.
(DEBUG) Enable debug on order comments {True}: Whether to show alerts on order comments or not.
Number of decimal digits for Prices {2}.
(DECIMAL) Maximum number of decimal for contracts {3}.
__ SETTINGS - Zignaly
(ZIG) Integration type {TradingView only}: Hybrid : Both TradingView and Zignaly handle take profit, trailing stops and stop losses. Useful if you are scared about TradingView not firing an alert. It might arise problems if TradingView and Zignaly get out of sync. TradingView only : TradingView sends entry and exit orders to Zignaly so that Zignaly only buys or sells. Zignaly won't handle stop loss or other settings on its own.
(ZIG) Zignaly Alert Type {WebHook}: 'Email' or 'WebHook'.
(ZIG) Provider type {Copy Trader Provider}: 'Copy Trader Provider' or 'Signal Provider'. 'Copy Trader Provider' sends a percentage to manage. 'Signal Provider' sends a quote to manage.
(ZIG) Exchange: 'Binance' or 'Kucoin'.
(ZIG) Exchange Type {Spot}: 'Spot' or 'Futures'.
(ZIG) Leverage {1}. Set it to '1' when '(ZIG) Exchange Type' is set to 'Spot'.
__ SETTINGS - Strategy
(STRAT) Strategy Type: 'Long and Short', 'Long Only' or 'Short Only'.
(STOPTAKE) Take Profit? {false}: Whether to enable Take Profit.
(STOPTAKE) Stop Loss? {True}: Whether to enable Stop Loss.
(TRAILING) Enable Trailing Take Profit (%) {True}: Whether to enable Trailing Take Profit.
(STOPTAKE) Take Profit % {3.0}: Take profit percentage. This setting is only used when '(STOPTAKE) Take Profit?' setting is set to true.
(STOPTAKE) Stop Loss % {2.0}: Stop loss percentage. This setting is only used when '(STOPTAKE) Stop Loss?' setting is set to true.
(TRAILING) Trailing Take Profit Trigger (%) {2.5}: Trailing Stop Trigger Percentage. This setting is only used when '(TRAILING) Enable Trailing Take Profit (%)' setting is set to true.
(TRAILING) Trailing Take Profit as a percentage of Trailing Take Profit Trigger (%) {25.0}: Trailing Stop Distance Percentage. This setting is only used when '(TRAILING) Enable Trailing Take Profit (%)' setting is set to true.
(RECENT) Number of minutes to wait to open a new order after the previous one has been opened {6}.
DEFAULT SETTINGS
By default this strategy has been setup with these beginner settings:
'(ZIG) Integration type' : TradingView only
'(ZIG) Provider type' : 'Copy Trader Provider'
'(ZIG) Exchange' : 'Binance'
'(ZIG) Exchange Type' : 'Spot'
'(STRAT) Strategy Type' : 'Long Only'
'(ZIG) Leverage' : '1' (Or no leverage)
but you can change those settings if needed.
FIRST STEP
For both future of spot markets you should make sure to change '(ZIG) Zignaly Alert Type' to match either WebHook or Email. If you have a non paid account in TradingView as in October 2020 you would have to use Email which it's free to use.
RECOMMENDED SETTINGS
__ RECOMMENDED SETTINGS - Spot markets
'(ZIG) Exchange Type' setting should be set to 'Spot'
'(STRAT) Strategy Type' setting should be set to 'Long Only'
'(ZIG) Leverage' setting should be set to '1'
__ RECOMMENDED SETTINGS - Future markets
'(ZIG) Exchange Type' setting should be set to 'Futures'
'(STRAT) Strategy Type' setting should be set to 'Long and Short'
'(ZIG) Leverage' setting might be changed if desired.
__ RECOMMENDED SETTINGS - Signal Providers
'(ZIG) Provider type' setting should be set to 'Signal Provider'
'(CAPITAL) Capital quote invested per order in USDT units' setting might be changed if desired.
__ RECOMMENDED SETTINGS - Copy Trader Providers
'(ZIG) Provider type' setting should be set to 'Copy Trader Provider'
'(CAPITAL) Capital percentage invested per order (%)' setting might be changed if desired.
Strategy Properties setting: 'Initial Capital' might be changed if desired.
INTEGRATION TYPE EXPLANATION
'Hybrid': Both TradingView and Zignaly handle take profit, trailing stops and stop losses. Useful if you are scared about TradingView not firing an alert. It might arise problems if TradingView and Zignaly get out of sync.
'TradingView only': TradingView sends entry and exit orders to Zignaly so that Zignaly only buys or sells. Zignaly won't handle stop loss or other settings on its own.
HOW TO USE THIS STRATEGY
Beginner: Copy and paste the strategy and change it to your needs. Turn off '(DEBUG) Enable debug on order comments' setting.
Medium: Reuse functions and inputs from this strategy into your own as if it was a library.
Advanced: Check Strategy Tester. List of trades. Copy and paste the different suggested 'alert_message' variable contents to your script.
Expert: I needed a way to pass data from TradingView script to the alert. Now I know it's the 'alert_message' variable. I can do this own my own.
ALERTS SETUP
This is the important piece of information that allows you to connect TradingView to Zignaly in a semi-automatic manner.
__ ALERTS SETUP - WebHook
Webhook URL: https : // zignaly . com / api / signals.php?key=MYSECRETKEY
Message: { {{strategy.order.alert_message}} , "key" : "MYSECRETKEY" }
__ ALERTS SETUP - Email
Setup a new Hotmail account
Add it as an 'SMS email' in TradingView Profile settings page.
Confirm your own the email address
Create a rule in your Hotmail account that 'Redirects' (not forwards) emails to 'signals @ zignaly . email' when (1): 'Subject' includes 'Alert', (2): 'Email body' contains string 'MYZIGNALYREDIRECTTRIGGER' and (3): 'From' contains 'noreply @ tradingview . com'.
In 'More Actions' check: Send Email-to-SMS
Message: ||{{strategy.order.alert_message}}||key=MYSECRETKEY||
MYZIGNALYREDIRECTTRIGGER
'(DEBUG) Enable debug on order comments' is turned on by default so that you can see in the Strategy Tester. List of Trades. The different orders alert_message that would have been sent to your alert. You might want to turn it off it some many letters in the screen is problem.
STRATEGY ADVICE
If you turn on 'Take Profit' then turn off 'Trailing Take Profit'.
ZIGNALY SIDE ADVICE
If you are a 'Signal Provider' make sure that 'Allow reusing the same signalId if there isn't any open position using it?' setting in the profile tab is set to true.
You can find your 'MYSECRETKEY' in your 'Copy Trader/Signal' provider Edit tab at 'Signal URL'.
ADDITIONAL ZIGNALY DOCUMENTATION
docs . zignaly . com / signals / how-to -- How to send signals to Zignaly
3 Ways to send signals to Zignaly
SIGNALS
FINAL REMARKS
This strategy tries to match the Pine Script Coding Conventions as best as possible.
Ruckard TradingLatinoThis strategy tries to mimic TradingLatino strategy.
The current implementation is beta.
Si hablas castellano o espanyol por favor consulta MENSAJE EN CASTELLANO más abajo.
It's aimed at BTCUSDT pair and 4h timeframe.
STRATEGY DEFAULT SETTINGS EXPLANATION
max_bars_back=5000 : This is a random number of bars so that the strategy test lasts for one or two years
calc_on_order_fills=false : To wait for the 4h closing is too much. Try to check if it's worth entering a position after closing one. I finally decided not to recheck if it's worth entering after an order is closed. So it is false.
calc_on_every_tick=false
pyramiding=0 : We only want one entry allowed in the same direction. And we don't want the order to scale by error.
initial_capital=1000 : These are 1000 USDT. By using 1% maximum loss per trade and 7% as a default stop loss by using 1000 USDT at 12000 USDT per BTC price you would entry with around 142 USDT which are converted into: 0.010 BTC . The maximum number of decimal for contracts on this BTCUSDT market is 3 decimals. E.g. the minimum might be: 0.001 BTC . So, this minimal 1000 amount ensures us not to entry with less than 0.001 entries which might have happened when using 100 USDT as an initial capital.
slippage=1 : Binance BTCUSDT mintick is: 0.01. Binance slippage: 0.1 % (Let's assume). TV has an integer slippage. It does not have a percentage based slippage. If we assume a 1000 initial capital, the recommended equity is 142 which at 11996 USDT per BTC price means: 0.011 BTC. The 0.1% slippage of: 0.011 BTC would be: 0.000011 . This is way smaller than the mintick. So our slippage is going to be 1. E.g. 1 (slippage) * 0.01 (mintick)
commission_type=strategy.commission.percent and commission_value=0.1 : According to: binance . com / en / fee / schedule in VIP 0 level both maker and taker fees are: 0.1 %.
BACKGROUND
Jaime Merino is a well known Youtuber focused on crypto trading
His channel TradingLatino
features monday to friday videos where he explains his strategy.
JAIME MERINO STANCE ON BOTS
Jaime Merino stance on bots (taken from memory out of a 2020 June video from him):
'~
You know. They can program you a bot and it might work.
But, there are some special situations that the bot would not be able to handle.
And, I, as a human, I would handle it. And the bot wouldn't do it.
~'
My long term target with this strategy script is add as many
special situations as I can to the script
so that it can match Jaime Merino behaviour even in non normal circumstances.
My alternate target is learn Pine script
and enjoy programming with it.
WARNING
This script might be bigger than other TradingView scripts.
However, please, do not be confused because the current status is beta.
This script has not been tested with real money.
This is NOT an official strategy from Jaime Merino.
This is NOT an official strategy from TradingLatino . net .
HOW IT WORKS
It basically uses ADX slope and LazyBear's Squeeze Momentum Indicator
to make its buy and sell decisions.
Fast paced EMA being bigger than slow paced EMA
(on higher timeframe) advices going long.
Fast paced EMA being smaller than slow paced EMA
(on higher timeframe) advices going short.
It finally add many substrats that TradingLatino uses.
SETTINGS
__ SETTINGS - Basics
____ SETTINGS - Basics - ADX
(ADX) Smoothing {14}
(ADX) DI Length {14}
(ADX) key level {23}
____ SETTINGS - Basics - LazyBear Squeeze Momentum
(SQZMOM) BB Length {20}
(SQZMOM) BB MultFactor {2.0}
(SQZMOM) KC Length {20}
(SQZMOM) KC MultFactor {1.5}
(SQZMOM) Use TrueRange (KC) {True}
____ SETTINGS - Basics - EMAs
(EMAS) EMA10 - Length {10}
(EMAS) EMA10 - Source {close}
(EMAS) EMA55 - Length {55}
(EMAS) EMA55 - Source {close}
____ SETTINGS - Volume Profile
Lowest and highest VPoC from last three days
is used to know if an entry has a support
VPVR of last 100 4h bars
is also taken into account
(VP) Use number of bars (not VP timeframe): Uses 'Number of bars {100}' setting instead of 'Volume Profile timeframe' setting for calculating session VPoC
(VP) Show tick difference from current price {False}: BETA . Might be useful for actions some day.
(VP) Number of bars {100}: If 'Use number of bars (not VP timeframe)' is turned on this setting is used to calculate session VPoC.
(VP) Volume Profile timeframe {1 day}: If 'Use number of bars (not VP timeframe)' is turned off this setting is used to calculate session VPoC.
(VP) Row width multiplier {0.6}: Adjust how the extra Volume Profile bars are shown in the chart.
(VP) Resistances prices number of decimal digits : Round Volume Profile bars label numbers so that they don't have so many decimals.
(VP) Number of bars for bottom VPOC {18}: 18 bars equals 3 days in suggested timeframe of 4 hours. It's used to calculate lowest session VPoC from previous three days. It's also used as a top VPOC for sells.
(VP) Ignore VPOC bottom advice on long {False}: If turned on it ignores bottom VPOC (or top VPOC on sells) when evaluating if a buy entry is worth it.
(VP) Number of bars for VPVR VPOC {100}: Number of bars to calculate the VPVR VPoC. We use 100 as Jaime once used. When the price bounces back to the EMA55 it might just bounce to this VPVR VPoC if its price it's lower than the EMA55 (Sells have inverse algorithm).
____ SETTINGS - ADX Slope
ADX Slope
help us to understand if ADX
has a positive slope, negative slope
or it is rather still.
(ADXSLOPE) ADX cut {23}: If ADX value is greater than this cut (23) then ADX has strength
(ADXSLOPE) ADX minimum steepness entry {45}: ADX slope needs to be 45 degrees to be considered as a positive one.
(ADXSLOPE) ADX minimum steepness exit {45}: ADX slope needs to be -45 degrees to be considered as a negative one.
(ADXSLOPE) ADX steepness periods {3}: In order to avoid false detection the slope is calculated along 3 periods.
____ SETTINGS - Next to EMA55
(NEXTEMA55) EMA10 to EMA55 bounce back percentage {80}: EMA10 might bounce back to EMA55 or maybe to 80% of its complete way to EMA55
(NEXTEMA55) Next to EMA55 percentage {15}: How much next to the EMA55 you need to be to consider it's going to bounce back upwards again.
____ SETTINGS - Stop Loss and Take Profit
You can set a default stop loss or a default take profit.
(STOPTAKE) Stop Loss % {7.0}
(STOPTAKE) Take Profit % {2.0}
____ SETTINGS - Trailing Take Profit
You can customize the default trailing take profit values
(TRAILING) Trailing Take Profit (%) {1.0}: Trailing take profit offset in percentage
(TRAILING) Trailing Take Profit Trigger (%) {2.0}: When 2.0% of benefit is reached then activate the trailing take profit.
____ SETTINGS - MAIN TURN ON/OFF OPTIONS
(EMAS) Ignore advice based on emas {false}.
(EMAS) Ignore advice based on emas (On closing long signal) {False}: Ignore advice based on emas but only when deciding to close a buy entry.
(SQZMOM) Ignore advice based on SQZMOM {false}: Ignores advice based on SQZMOM indicator.
(ADXSLOPE) Ignore advice based on ADX positive slope {false}
(ADXSLOPE) Ignore advice based on ADX cut (23) {true}
(STOPTAKE) Take Profit? {false}: Enables simple Take Profit.
(STOPTAKE) Stop Loss? {True}: Enables simple Stop Loss.
(TRAILING) Enable Trailing Take Profit (%) {True}: Enables Trailing Take Profit.
____ SETTINGS - Strategy mode
(STRAT) Type Strategy: 'Long and Short', 'Long Only' or 'Short Only'. Default: 'Long and Short'.
____ SETTINGS - Risk Management
(RISKM) Risk Management Type: 'Safe', 'Somewhat safe compound' or 'Unsafe compound'. ' Safe ': Calculations are always done with the initial capital (1000) in mind. The maximum losses per trade/day/week/month are taken into account. ' Somewhat safe compound ': Calculations are done with initial capital (1000) or a higher capital if it increases. The maximum losses per trade/day/week/month are taken into account. ' Unsafe compound ': In each order all the current capital is gambled and only the default stop loss per order is taken into account. That means that the maximum losses per trade/day/week/month are not taken into account. Default : 'Somewhat safe compound'.
(RISKM) Maximum loss per trade % {1.0}.
(RISKM) Maximum loss per day % {6.0}.
(RISKM) Maximum loss per week % {8.0}.
(RISKM) Maximum loss per month % {10.0}.
____ SETTINGS - Decimals
(DECIMAL) Maximum number of decimal for contracts {3}: How small (3 decimals means 0.001) an entry position might be in your exchange.
EXTRA 1 - PRICE IS IN RANGE indicator
(PRANGE) Print price is in range {False}: Enable a bottom label that indicates if the price is in range or not.
(PRANGE) Price range periods {5}: How many previous periods are used to calculate the medians
(PRANGE) Price range maximum desviation (%) {0.6} ( > 0 ): Maximum positive desviation for range detection
(PRANGE) Price range minimum desviation (%) {0.6} ( > 0 ): Mininum negative desviation for range detection
EXTRA 2 - SQUEEZE MOMENTUM Desviation indicator
(SQZDIVER) Show degrees {False}: Show degrees of each Squeeze Momentum Divergence lines to the x-axis.
(SQZDIVER) Show desviation labels {False}: Whether to show or not desviation labels for the Squeeze Momentum Divergences.
(SQZDIVER) Show desviation lines {False}: Whether to show or not desviation lines for the Squeeze Momentum Divergences.
EXTRA 3 - VOLUME PROFILE indicator
WARNING: This indicator works not on current bar but on previous bar. So in the worst case it might be VP from 4 hours ago. Don't worry, inside the strategy calculus the correct values are used. It's just that I cannot show the most recent one in the chart.
(VP) Print recent profile {False}: Show Volume Profile indicator
(VP) Avoid label price overlaps {False}: Avoid label prices to overlap on the chart.
EXTRA 4 - ZIGNALY SUPPORT
(ZIG) Zignaly Alert Type {Email}: 'Email', 'Webhook'. ' Email ': Prepare alert_message variable content to be compatible with zignaly expected email content format. ' Webhook ': Prepare alert_message variable content to be compatible with zignaly expected json content format.
EXTRA 5 - DEBUG
(DEBUG) Enable debug on order comments {False}: If set to true it prepares the order message to match the alert_message variable. It makes easier to debug what would have been sent by email or webhook on each of the times an order is triggered.
HOW TO USE THIS STRATEGY
BOT MODE: This is the default setting.
PROPER VOLUME PROFILE VIEWING: Click on this strategy settings. Properties tab. Make sure Recalculate 'each time the order was run' is turned off.
NEWBIE USER: (Check PROPER VOLUME PROFILE VIEWING above!) You might want to turn on the 'Print recent profile {False}' setting. Alternatively you can use my alternate realtime study: 'Resistances and supports based on simplified Volume Profile' but, be aware, it might consume one indicator.
ADVANCED USER 1: Turn on the 'Print price is in range {False}' setting and help us to debug this subindicator. Also help us to figure out how to include this value in the strategy.
ADVANCED USER 2: Turn on the all the (SQZDIVER) settings and help us to figure out how to include this value in the strategy.
ADVANCED USER 3: (Check PROPER VOLUME PROFILE VIEWING above!) Turn on the 'Print recent profile {False}' setting and report any problem with it.
JAIME MERINO: Just use the indicator as it comes by default. It should only show BUY signals, SELL signals and their associated closing signals. From time to time you might want to check 'ADVANCED USER 2' instructions to check that there's actually a divergence. Check also 'ADVANCED USER 1' instructions for your amusement.
EXTRA ADVICE
It's advised that you use this strategy in addition to these two other indicators:
* Squeeze Momentum Indicator
* ADX
so that your chart matches as close as possible to TradingLatino chart.
ZIGNALY INTEGRATION
This strategy supports Zignaly email integration by default. It also supports Zignaly Webhook integration.
ZIGNALY INTEGRATION - Email integration example
What you would write in your alert message:
||{{strategy.order.alert_message}}||key=MYSECRETKEY||
ZIGNALY INTEGRATION - Webhook integration example
What you would write in your alert message:
{ {{strategy.order.alert_message}} , "key" : "MYSECRETKEY" }
CREDITS
I have reused and adapted some code from
'Directional Movement Index + ADX & Keylevel Support' study
which it's from TradingView console user.
I have reused and adapted some code from
'3ema' study
which it's from TradingView hunganhnguyen1193 user.
I have reused and adapted some code from
'Squeeze Momentum Indicator ' study
which it's from TradingView LazyBear user.
I have reused and adapted some code from
'Strategy Tester EMA-SMA-RSI-MACD' study
which it's from TradingView fikira user.
I have reused and adapted some code from
'Support Resistance MTF' study
which it's from TradingView LonesomeTheBlue user.
I have reused and adapted some code from
'TF Segmented Linear Regression' study
which it's from TradingView alexgrover user.
I have reused and adapted some code from
"Poor man's volume profile" study
which it's from TradingView IldarAkhmetgaleev user.
FEEDBACK
Please check the strategy source code for more detailed information
where, among others, I explain all of the substrats
and if they are implemented or not.
Q1. Did I understand wrong any of the Jaime substrats (which I have implemented)?
Q2. The strategy yields quite profit when we should long (EMA10 from 1d timeframe is higher than EMA55 from 1d timeframe.
Why the strategy yields much less profit when we should short (EMA10 from 1d timeframe is lower than EMA55 from 1d timeframe)?
Any idea if you need to do something else rather than just reverse what Jaime does when longing?
FREQUENTLY ASKED QUESTIONS
FAQ1. Why are you giving this strategy for free?
TradingLatino and his fellow enthusiasts taught me this strategy. Now I'm giving back to them.
FAQ2. Seriously! Why are you giving this strategy for free?
I'm confident his strategy might be improved a lot. By keeping it to myself I would avoid other people contributions to improve it.
Now that everyone can contribute this is a win-win.
FAQ3. How can I connect this strategy to my Exchange account?
It seems that you can attach alerts to strategies.
You might want to combine it with a paying account which enable Webhook URLs to work.
I don't know how all of this works right now so I cannot give you advice on it.
You will have to do your own research on this subject. But, be careful. Automating trades, if not done properly,
might end on you automating losses.
FAQ4. I have just found that this strategy by default gives more than 3.97% of 'maximum series of losses'. That's unacceptable according to my risk management policy.
You might want to reduce default stop loss setting from 7% to something like 5% till you are ok with the 'maximum series of losses'.
FAQ5. Where can I learn more about your work on this strategy?
Check the source code. You might find unused strategies. Either because there's not a substantial increases on earnings. Or maybe because they have not been implemented yet.
FAQ6. How much leverage is applied in this strategy?
No leverage.
FAQ7. Any difference with original Jaime Merino strategy?
Most of the times Jaime defines an stop loss at the price entry. That's not the case here. The default stop loss is 7% (but, don't be confused it only means losing 1% of your investment thanks to risk management). There's also a trailing take profit that triggers at 2% profit with a 1% trailing.
FAQ8. Why this strategy return is so small?
The strategy should be improved a lot. And, well, backtesting in this platform is not guaranteed to return theoric results comparable to real-life returns. That's why I'm personally forward testing this strategy to verify it.
MENSAJE EN CASTELLANO
En primer lugar se agradece feedback para mejorar la estrategia.
Si eres un usuario avanzado y quieres colaborar en mejorar el script no dudes en comentar abajo.
Ten en cuenta que aunque toda esta descripción tenga que estar en inglés no es obligatorio que el comentario esté en inglés.
CHISTE - CASTELLANO
¡Pero Jaime!
¡400.000!
¡Tu da mun!
BV's MACD SIGNAL TESTERHello ladies and gentlemen,
Today, as you may have seen in the title, I have coded a strategy to determine once and for all if MACD could make you money in 2020.
So, at the end of this video, you will know which MACD strategy will bring you the most money.
Spoiler alert: we've hit the 90% WinRAte mark on the Euro New Zealand Dollar chart.
I've seen a lot of videos of people testing different MACD signals, some up to 100 times.
But In my opinion, all traders must rely on statistics to put all the odds on their side and good statistics require a lot more data.
The algorithm I'm showing you tests each signal one by one over a 3 year period and on 28 different graphs.
That way we are sure that we have encountered all possible market behavior.
From phases of congestion to major trends or even the effects of COVID-19
I use the ATR to determine my Stop Loss and Take Profits. The Stop Loss is placed at 1.5 times the ATR, the Take Profit is placed at 1 time the ATR.
If my Take Profit is hit, I take 50% of the profits and let the position run by moving my Stop Loss to Zero.
This way, the position can no longer be a losing position.
If you are not familiar with this practice, I invite you to study the "Scaling out" video from the NoNonsenseForex channel.
BV's Trading Journal.
QuantCat Mom Finder Strategy (1H)QuantCat Momentum Finder Strategy
This strategy is designed to be used on the 1 hour time frame, on all x/btc pairs.
The beautiful thing is it plots the take profit, and stoploss for you for each entry- where I would say use the stoploss for sure and feel with water with how the price action is looking when in profit.
In this strategy, I actually implemented my own trading style into building the strategy. Having to replicate my own trading strategy into an algorithm, I can't make it exactly perfect to how I would trade, but what I can do is try and program the parameters that give it the absolute best chance of making a big move with a small drawdown- which replicates part of my momentum trading style. Here I am using RSI, MACD, EMA and trend filtering values to find moments where there has been a momentum change to play the rest of the move. It only picks the best entries.
There is always a 3-4 R/R move on average with with these trades, meaning 1 in 4 only need to hit to be a break even trader- where most of these strategies have about 35% hit rate.
The stoploss is so crucial to minimise any damage from huge unexpected candles, the strategies can just be used for entries as well, you don't have to stick to the exact formula- of the long and short system, but this by itself is profitable.
The system nets positive results on
-ETH/BTC
-LTC/BTC
-XRP/BTC
-ADA/BTC
-NEO/BTC etc.
We also have a free 15M strategy available too.
You can join our discord server to get live alerts for the strategy as well as speak to our devs! Link in signature below!!!
Renko Strategy Open_CloseSimple Renko strategy, very profitable. Thanks to vacalo69 for the idea.
Rules when the strategy opens order at market as follows:
- Buy when previous brick (-1) was bearish and previous brick (-2) was bearish too and actual brick close is bullish
- Sell when previous brick (-1) was bullish and previous brick (-2) was bullish too and actual brick close is bearish
Rules when the strategy send stop order are the same but this time a stop buy or stop sell is placed (better overall results).
Note that strategy open an order only after that condition is met, at the beginning of next candle, so the actual close is not the actual price.
Only input is the brick size multiplier for stop loss and take profit: SL and TP are placed at (brick size)x(multiplier) Or put it very high if you want startegy to close order on opposite signal.
Adjust brick size considering:
- Strategy works well if there are three or more consecutive bricks of same "color"
- Expected Profit
- Drawdown
- Time on trade
This strategy uses Renko charts with TRADITIONAL bricks, so no repaint.
Study with alerts, MT4 expert advisor and jforex automatic strategy are available at request.
Please use comment section for any feedback.
TradeVision Pro - Multi-Factor Analysis System═══════════════════════════════════════════════════════════════════
TRADEVISION PRO - MULTI-FACTOR ANALYSIS SYSTEM
Created by Zakaria Safri
═══════════════════════════════════════════════════════════════════
A comprehensive technical analysis tool combining multiple factors for
signal generation, trend analysis, and dynamic risk management visualization.
Designed for educational purposes to study multi-factor convergence trading
strategies across all markets and timeframes.
⚠️ IMPORTANT DISCLAIMER:
This indicator is provided for EDUCATIONAL and INFORMATIONAL purposes only.
It does NOT constitute financial advice, investment advice, or trading advice.
Past performance does not guarantee future results. Trading involves
substantial risk of loss. Always do your own research and consult a
financial advisor before making trading decisions.
🎯 KEY FEATURES
═══════════════════════════════════════════════════════════════════
✅ MULTI-FACTOR SIGNAL GENERATION
• Price Volume Trend (PVT) analysis
• Rate of Change (ROC) momentum confirmation
• Volume-Weighted Moving Average (VWMA) trend filter
• Simple Moving Average (SMA) price smoothing
• Signals only when all factors align
✅ DYNAMIC RISK VISUALIZATION (Educational Only)
• ATR-based stop loss calculation
• Risk-reward based take profit levels (1-5 targets)
• Visual lines and labels showing entry, SL, and TPs
• Automatically adapts to market volatility
• ⚠️ VISUAL REFERENCE ONLY - Does not execute trades
✅ SUPPORT & RESISTANCE DETECTION
• Automatic pivot-based level identification
• Red dashed lines for resistance zones
• Green dashed lines for support areas
• Helps identify key price levels
✅ VWMA TREND BANDS
• Volume-weighted moving average with standard deviation
• Color-changing bands (Green = Uptrend, Red = Downtrend)
• Filled band area for easy visualization
• Volume-confirmed trend strength
✅ TREND DETECTION SYSTEM
• Counting-based trend confirmation
• Three states: Up Trend, Down Trend, Ranging
• Requires threshold of consecutive bars
• Independent trend validation
✅ PRICE RANGE VISUALIZATION
• High/Low range lines showing market structure
• Filled area highlighting price volatility
• Helps identify breakout zones
✅ COMPREHENSIVE INFO TABLE
• Real-time trend status
• Last signal type (BUY/SELL)
• Entry price display
• Stop loss level
• All active take profit levels
• Clean, professional layout
✅ OPTIONAL FEATURES
• Bar coloring by trend direction
• Customizable alert notifications
• Toggle visibility for all components
• Fully configurable parameters
📊 HOW IT WORKS
═══════════════════════════════════════════════════════════════════
SIGNAL METHODOLOGY:
BUY SIGNAL generates when ALL conditions are met:
• Smoothed price > Moving Average (upward price trend)
• PVT > PVT Average (volume supporting uptrend)
• ROC > 0 (positive momentum)
• Close > VWMA (above volume-weighted average)
SELL SIGNAL generates when ALL conditions are met:
• Smoothed price < Moving Average (downward price trend)
• PVT < PVT Average (volume supporting downtrend)
• ROC < 0 (negative momentum)
• Close < VWMA (below volume-weighted average)
This multi-factor approach filters out weak signals and waits for
strong convergence before generating alerts.
RISK CALCULATION:
Stop Loss = Entry ± (ATR × SL Multiplier)
• Uses Average True Range for volatility measurement
• Automatically adjusts to market conditions
Take Profit Levels = Entry ± (Risk Distance × TP Multiplier × Level)
• Risk Distance = |Entry - Stop Loss|
• Creates risk-reward based targets
• Example: TP Multiplier 1.0 = 1:1, 2:2, 3:3 risk-reward
⚠️ NOTE: All risk levels are VISUAL REFERENCES for educational study.
They do not execute trades automatically.
⚙️ SETTINGS GUIDE
═══════════════════════════════════════════════════════════════════
SIGNAL SETTINGS:
• Signal Length (14): Main calculation period for averages
• Smooth Length (8): Price data smoothing period
• PVT Length (14): Price Volume Trend calculation period
• ROC Length (9): Rate of Change momentum period
RISK MANAGEMENT (Visual Only):
• ATR Length (14): Volatility measurement lookback
• SL Multiplier (2.2): Stop loss distance (× ATR)
• TP Multiplier (1.0): Risk-reward ratio per TP level
• TP Levels (1-5): Number of take profit targets to display
• Show TP/SL Lines: Toggle visual reference lines
SUPPORT & RESISTANCE:
• Pivot Lookback (10): Sensitivity for S/R detection
• Show SR: Toggle support/resistance lines
VWMA BANDS:
• VWMA Length (20): Volume-weighted average period
• Show Bands: Toggle band visibility
TREND DETECTION:
• Trend Threshold (5): Consecutive bars required for trend
PRICE LINES:
• Period (20): High/low calculation lookback
• Show: Toggle price range visualization
DISPLAY OPTIONS:
• Signals: Show/hide BUY/SELL labels
• Table: Show/hide information panel
• Color Bars: Enable trend-based bar coloring
ALERTS:
• Enable: Activate alert notifications for signals
💡 USAGE INSTRUCTIONS
═══════════════════════════════════════════════════════════════════
RECOMMENDED APPROACH:
• Works on all timeframes (1m to Monthly)
• Suitable for all markets (Stocks, Forex, Crypto, etc.)
• Best used with additional analysis and confirmation
• Always practice proper risk management
ENTRY STRATEGY:
1. Wait for BUY or SELL signal to appear
2. Check trend table for trend confirmation
3. Verify VWMA band color matches signal direction
4. Look for nearby support/resistance confluence
5. Consider entering on next candle open
6. Use visual SL level for risk management
EXIT STRATEGY:
1. Use TP levels as potential exit zones
2. Consider scaling out at multiple TP levels
3. Exit on opposite signal
4. Adjust stops as trade progresses
5. Account for spread and slippage
TREND TRADING:
• "Up Trend" → Focus on BUY signals
• "Down Trend" → Focus on SELL signals
• "Ranging" → Wait for clear trend or use range strategies
🎨 VISUAL ELEMENTS
═══════════════════════════════════════════════════════════════════
• GREEN VWMA BANDS → Bullish trend indication
• RED VWMA BANDS → Bearish trend indication
• ORANGE DASHED LINE → Entry price reference
• RED SOLID LINE → Stop loss level
• GREEN DOTTED LINES → Take profit targets
• RED DASHED LINES → Resistance levels
• GREEN DASHED LINES → Support levels
• GREY FILLED AREA → Price high/low range
• GREEN BUY LABEL → Long signal
• RED SELL LABEL → Short signal
• BLUE INFO TABLE → Current trade details
• GREEN/RED BARS → Trend direction (optional)
⚠️ IMPORTANT NOTES
═══════════════════════════════════════════════════════════════════
RISK WARNING:
• Trading involves substantial risk of loss
• You can lose more than your initial investment
• Past performance does not guarantee future results
• No indicator is 100% accurate
• Always use proper position sizing
• Never risk more than you can afford to lose
EDUCATIONAL PURPOSE:
• This tool is for learning and research
• Not a complete trading system
• Should be combined with other analysis
• Requires interpretation and context
• Test thoroughly before live use
• Consider consulting a financial advisor
TECHNICAL LIMITATIONS:
• Signals lag price action (all indicators lag)
• False signals occur in choppy markets
• Works better in trending conditions
• Support/resistance levels are approximate
• TP/SL levels are suggestions, not guarantees
📚 METHODOLOGY
═══════════════════════════════════════════════════════════════════
This indicator combines established technical analysis concepts:
• Price Volume Trend (PVT): Volume-weighted price momentum
• Rate of Change (ROC): Momentum measurement
• Volume-Weighted Moving Average (VWMA): Trend identification
• Average True Range (ATR): Volatility measurement (J. Welles Wilder)
• Pivot Points: Support/resistance detection
All methods are based on publicly available technical analysis
principles. No proprietary or "secret" algorithms are used.
⚖️ FULL DISCLAIMER
═══════════════════════════════════════════════════════════════════
LIABILITY:
The creator (Zakaria Safri) assumes NO liability for:
• Trading losses or damages of any kind
• Loss of capital or profits
• Incorrect signal interpretation
• Technical issues, bugs, or errors
• Any consequences of using this tool
USER RESPONSIBILITY:
By using this indicator, you acknowledge that:
• You are solely responsible for your trading decisions
• You understand the substantial risks involved
• You will not hold the creator liable for losses
• You will conduct your own research and analysis
• You may consult a licensed financial professional
• You are using this tool entirely at your own risk
AS-IS PROVISION:
This indicator is provided "AS IS" without warranty of any kind,
express or implied, including but not limited to warranties of
merchantability, fitness for a particular purpose, or non-infringement.
The creator is not a registered investment advisor, financial planner,
or broker-dealer. This tool is not approved or endorsed by any
financial authority.
📞 ABOUT THE CREATOR
═══════════════════════════════════════════════════════════════════
Created by: Zakaria Safri
Specialization: Technical analysis indicator development
Focus: Multi-factor analysis, risk visualization, trend detection
This is an educational tool designed to demonstrate technical
analysis concepts and multi-factor signal generation methods.
📋 VERSION INFO
═══════════════════════════════════════════════════════════════════
Version: 1.0
Platform: TradingView Pine Script v5
License: Mozilla Public License 2.0
Creator: Zakaria Safri
Year: 2024
═══════════════════════════════════════════════════════════════════
Study Carefully, Trade Wisely, Manage Risk Properly
TradeVision Pro - Educational Trading Tool
Created by Zakaria Safri
═══════════════════════════════════════════════════════════════════
Pro Scalper - Kalman Supertrend with Dynamic OB/OS Zones═══════════════════════════════════════════════════════════════════
PRO SCALPER - KALMAN SUPERTREND WITH DYNAMIC OB/OS ZONES
Developed by Zakaria Safri
═══════════════════════════════════════════════════════════════════
A powerful day trading and scalping indicator designed for the 30-minute
timeframe, combining advanced Kalman filtering with Supertrend analysis
and VWMA-based overbought/oversold detection for stocks and cryptocurrencies.
🎯 KEY FEATURES
═══════════════════════════════════════════════════════════════════
✅ Kalman-Filtered Supertrend
• Advanced noise reduction using Kalman Filter mathematics
• Reduces false signals by filtering market noise
• Adaptive trend-following with dynamic support/resistance
✅ Clear Buy/Sell Signals
• Green "BUY" labels for long entries
• Red "SELL" labels for short entries
• Signals trigger on confirmed trend reversals
• Matrix-style candle coloring (Green=Bull, Red=Bear)
✅ Dynamic Overbought/Oversold Zones
• VWMA-based adaptive zones
• Automatically adjusts to market volatility
• Visual zone highlighting with fills
✅ Reversal Signal Detection
• "R" markers identify potential reversals
• Vertical lines highlight reversal bars
• Based on price rejection from OB/OS zones
✅ Smart Take Profit System
• Automatic TP levels at OB/OS zones
• "X" markers when targets are hit
• Based on higher-high/lower-low logic
✅ Live Entry Price Table
• Shows current trend direction
• Displays last signal type (BUY/SELL)
• Real-time entry price tracking
✅ Comprehensive Alert System
• Buy/Sell signal alerts
• Reversal detection alerts
• Take profit hit notifications
• All alerts are non-repainting
📊 HOW IT WORKS
═══════════════════════════════════════════════════════════════════
1. KALMAN FILTER
The indicator applies Kalman filtering to price and ATR data, using
mathematical equations derived from Rudolf E. Kalman's work. This
advanced filtering technique:
• Smooths price data while maintaining responsiveness
• Removes outliers and reduces market noise
• Adapts to changing market conditions
• Improves signal accuracy and reliability
2. MODIFIED SUPERTREND
A customized Supertrend calculation that uses:
• Kalman-filtered HL2 price instead of raw prices
• Filtered ATR for volatility measurement
• Adaptive trailing bands that follow price
• Trend detection with minimal lag
3. VWMA DYNAMIC ZONES
Volume-Weighted Moving Average bands that:
• Calculate from highest/lowest prices over lookback period
• Adapt to current volatility and price range
• Identify true overbought/oversold conditions
• Provide logical take-profit targets
4. SIGNAL GENERATION
• BUY: When price breaks above Supertrend (trend flips bullish)
• SELL: When price breaks below Supertrend (trend flips bearish)
• REVERSAL: When price rejects from OB/OS zones
• TAKE PROFIT: When price reaches target zones or forms HH/LL
⚙️ SETTINGS GUIDE
═══════════════════════════════════════════════════════════════════
🔧 KALMAN FILTER SETTINGS
┌─────────────────────────────────────────────────────────────┐
│ Gain (0.7) → Higher = More responsive, Less smooth │
│ Momentum (0.3) → Higher = More momentum, Less filtering │
└─────────────────────────────────────────────────────────────┘
📈 SUPERTREND SETTINGS
┌─────────────────────────────────────────────────────────────┐
│ ATR Period (10) → Lookback for volatility calculation │
│ ATR Multiplier (3.0) → Distance of bands (lower = more sigs)│
└─────────────────────────────────────────────────────────────┘
📊 VWMA BANDS (OB/OS ZONES)
┌─────────────────────────────────────────────────────────────┐
│ VWMA Length (20) → Smoothing period │
│ Overbought Multiplier (1.5) → OB zone distance │
│ Oversold Multiplier (1.5) → OS zone distance │
│ Band Lookback (20) → Range calculation period │
└─────────────────────────────────────────────────────────────┘
💡 USAGE INSTRUCTIONS
═══════════════════════════════════════════════════════════════════
RECOMMENDED SETUP:
• Timeframe: 30 minutes (optimized for intraday trading)
• Markets: Stocks, Cryptocurrencies, Forex
• Risk Management: Always use stop losses
• Confirmation: Combine with volume and support/resistance
ENTRY SIGNALS:
1. Wait for BUY/SELL label to appear
2. Check trend direction (candle color)
3. Confirm entry on next candle open
4. Set stop loss below/above Supertrend line
EXIT SIGNALS:
1. Take profit at "X" markers
2. Exit on opposite signal
3. Exit on reversal "R" if against your position
4. Manual exit at predetermined R:R ratio
REVERSAL TRADING:
1. Wait for "R" marker in OB/OS zone
2. Confirm with candlestick pattern
3. Enter counter-trend trade
4. Target middle VWMA or opposite zone
🎨 VISUAL ELEMENTS
═══════════════════════════════════════════════════════════════════
• GREEN LINE → Bullish Supertrend (support)
• RED LINE → Bearish Supertrend (resistance)
• CYAN LINE → VWMA baseline
• RED ZONE → Overbought area
• GREEN ZONE → Oversold area
• GREEN CANDLES → Bullish trend active
• RED CANDLES → Bearish trend active
• BUY LABEL → Long entry signal
• SELL LABEL → Short entry signal
• R MARKER → Reversal signal
• X MARKER → Take profit hit
⚠️ IMPORTANT NOTES
═══════════════════════════════════════════════════════════════════
✓ NON-REPAINTING: All signals are confirmed on candle close
✓ BACKTESTING: Test on your specific market before live trading
✓ RISK MANAGEMENT: Use proper position sizing and stop losses
✓ MARKET CONDITIONS: Works best in trending and range-bound markets
✓ CONFLUENCE: Combine with other analysis for best results
⚡ Best Performance:
• Trending markets with clear momentum
• Moderate to high volatility environments
• 30-minute to 1-hour timeframes
• Liquid markets with tight spreads
⚠️ Avoid Using:
• During major news events (high slippage)
• In extremely choppy/sideways markets
• On illiquid assets with wide spreads
• Without proper risk management
📚 METHODOLOGY
═══════════════════════════════════════════════════════════════════
This indicator combines three proven technical analysis methods:
1. TREND FOLLOWING (Supertrend)
Captures major price movements and momentum
2. MEAN REVERSION (VWMA Zones)
Identifies extremes and potential reversals
3. NOISE FILTERING (Kalman)
Reduces false signals and improves accuracy
By integrating these approaches with volume weighting and adaptive
calculations, the Pro Scalper provides a comprehensive trading system
suitable for active traders and scalpers.
⚖️ DISCLAIMER
═══════════════════════════════════════════════════════════════════
This indicator is provided for educational and informational purposes
only. It does not constitute financial advice, and past performance
does not guarantee future results.
Trading carries substantial risk of loss and is not suitable for all
investors. Always:
• Do your own research and analysis
• Use proper risk management
• Never risk more than you can afford to lose
• Test thoroughly before live trading
• Consult a financial advisor if needed
The creator (Zakaria Safri) assumes no liability for trading losses
incurred using this indicator.
📞 ABOUT THE DEVELOPER
═══════════════════════════════════════════════════════════════════
Developer: Zakaria Safri
Specialization: Advanced algorithmic trading indicators
Focus: Noise reduction, signal filtering, and trend analysis
• Regular updates and improvements
• Community feedback integration
• Bug fixes and optimization
• Feature requests welcome
📋 VERSION INFO
═══════════════════════════════════════════════════════════════════
Version: 1.0
Created: 2024
License: Mozilla Public License 2.0
Author: Zakaria Safri
═══════════════════════════════════════════════════════════════════
Happy Trading! 📈
Developed with precision by Zakaria Safri
═══════════════════════════════════════════════════════════════════
Moving Average Trend Strategy V4.1 — Revised Version (Selectable✅ **Version Notes (V4.0)**
| Feature | Description |
| --------------------------------------- | -------------------------------------------------------- |
| 🧠 **Moving Average Type Options** | Choose from EMA / SMA / HMA / WMA |
| 🧱 **Take-Profit / Stop-Loss Switches** | Can be enabled or disabled independently |
| ⚙️ **Add Position Function** | Can be enabled or disabled independently |
| 🔁 **Add Position Signal Source** | Selectable between MA Crossover / MACD / RCI / RSI |
| 💹 **Adjustable Parameters** | All periods and percentages are customizable in settings |
---
✅ **Update Summary:**
| Function | Description |
| -------------------------------------- | --------------------------------------------------------------------- |
| **MA Type Selection** | Choose EMA / SMA / HMA / WMA in chart settings |
| **Take-Profit / Stop-Loss Percentage** | Configurable in the “Take-Profit & Stop-Loss” group |
| **Add / Reduce Position Percentage** | Adjustable separately in the “Add/Reduce Position” group |
| **MA Periods** | Customizable in the “Moving Average Parameters” section |
| **Code Structure** | Logic unchanged — only parameterization and selection functions added |
---
### **Strategy Recommendations:**
* **Trending Market:** Prefer EMA trend tracking or SAR indicators
* **Range-Bound Market:** Use ATR-based volatility stop-loss
* **Before Major Events:** Consider option hedging
* **Algorithmic Trading:** Recommend ATR + partial take-profit combination strategy
---
### **Key Parameter Optimization Logic:**
* Backtest different **ATR multipliers** (2–3× ATR)
* Test **EMA periods** (10–50 periods)
* Optimize **partial take-profit ratios**
* Adjust **maximum drawdown tolerance** (typically 30–50% of profit)
---
### **Risk Control Tips:**
* Avoid overly tight stop-losses that trigger too frequently
* During strong trends, consider widening take-profit targets
* Confirm trend continuation with **volume analysis**
* Adjust parameters based on **timeframe** (e.g., Daily vs Hourly)
---
### **Practical Example (Forex: EUR/USD):**
* **Entry:** Go long on breakout above 1.1200
* **Initial Stop-Loss:** 1.1150 (50 pips)
* **When profit reaches 1.1300:**
* Close 50% of position
* Move stop-loss to 1.1250 (lock in 50 pips profit)
* **When price rises to 1.1350:**
* Move stop-loss to 1.1300 (lock in 100 pips profit)
* **Final Outcome:**
* Price retraces to 1.1300, triggering take-profit
This method secured over **80% of trend profits** during the 2023 EUR rebound, capturing **23% more profit** compared to fixed take-profit strategies (based on backtest results).